<?php

use App\Models\Menu;

if(!function_exists('menuTree')){
    //    获取菜单列表的辅助函数
    /**
     * 所有菜单原始数据
     */
    function menuTree()
    {
        $menus = Menu::where('pid', 0)
            ->with('children')
            ->paginate(20);

        return $menus;
    }

    /**
     * 缓存所有菜单
     */
    if(!function_exists('cache_menu_all')){
        function cache_menu_all(){
            return cache()->rememberForever('cache_menu_all',function (){
                return menuTree();
            });
        }
    }

    /**
     * 清空菜单缓存
     */
    if(!function_exists('forget_cache_menu')){
        function forget_cache_menu(){
            cache()->forget('cache_menu_all');
        }
    }

}

